package com.qcby.springbootdemotest.Util;

import java.text.NumberFormat;
import java.util.Locale;

public class StringToNumber {
    /**
     *
     * @param stringValue
     * @return
     */
    public static Double StrToNum(String stringValue){
        //首先检查字符串当中是包含千还是万
        NumberFormat format = NumberFormat.getInstance(Locale.CHINESE);
        double value = 0.0;
        if(stringValue.contains("千")){
            try {
                Number number = format.parse(stringValue);
                value = number.doubleValue();
                // 如果确定是转换成1000，可以手动乘以1000
                value = value * 1000;
            } catch (Exception e) {
                e.printStackTrace();
            }
        }else if(stringValue.contains("万")){
            try {
                Number number = format.parse(stringValue);
                value = number.doubleValue();
                // 如果确定是转换成1000，可以手动乘以1000
                value = value * 10000;
            } catch (Exception e) {
                e.printStackTrace();
            }
        }else {
            value = 0.0;
        }
        return value;
    }

    /**
     * 截取 - 前边的数据
     * @param data
     * @return
     */
    public static String getValue(String data){
        String str1 = data.substring(0, data.indexOf("-"));
        return str1;
    }
    /*public static String getValue(String data){
        // 检查字符串是否为空，以及是否包含短横线
        if (data == null || data.isEmpty() || !data.contains("-")) {
            return ""; // 或者抛出一个异常，取决于你的业务逻辑
        }

        // 检查短横线是否是第一个字符
        int dashIndex = data.indexOf("-");
        if (dashIndex == 0) {
            return ""; // 如果短横线是第一个字符，返回空字符串
        }

        // 提取短横线之前的部分
        String str1 = data.substring(0, dashIndex);
        return str1;
    }*/

    public static void main(String[] args) {
        String value = getValue("1.5万-2.4万");
        Double a = StrToNum(value);
        System.out.println(a);
    }
}

